console.log(`
【fs 模块概述】
    Node.js 的文件系统模块 (fs) 允许我们与文件系统进行交互，
    提供了大量用于文件和目录操作的方法。这些方法通常有同步和异步两种版本。
`);

console.log(`
【获取文件信息 Api】
    1. fs.stat()             异步获取文件信息
    2. fs.statSync()         同步获取文件信息
`);

console.log(
  `使用文件写入Api前，需要先导入fs模块：
   导入模块、require 是 Node.js 环境中的'全局'变量，用来导入模块
   const fs = require("fs");
  `
);
const fs = require("fs");

console.log(`
【异步获取文件信息】:
    语法：
        fs.stat(path, callback)
    参数：
        path：文件路径
        callback：回调函数
    返回值：
        无
    异常：
        如果 path 不存在，会抛出异常
`);

fs.stat("./10_fs文件系统学习笔记(完整版).md", (err, data) => {
  if (err) {
    console.log("查看文件信息失败~");
    return;
  }
  // console.log(data); // 查看全部信息
  console.log(data.size); // 查看文件大小
  console.log(data.isFile()); // 判断是否是文件
  console.log(data.isDirectory()); // 判断是否是文件夹
});




console.log(`
【同步获取文件信息】:
    语法：
        fs.statSync(path)
    参数：
        path：文件路径
    返回值：
        文件信息对象
    异常：
        如果 path 不存在，会抛出异常
`);

try {
  const data = fs.statSync("./10_fs文件系统学习笔记(完整版).md");
  console.log(data);
} catch (err) {
  console.log(err);
}

